package cn.hy.today;

import java.util.Arrays;

class Solution_2171 {

    // 设 beans 的长度为 n，以 n−i 为矩形底边长，v=beans[i] 为矩形高, 面积为 (n−i)⋅v
    // 用 ∑beans[i] 减去矩形面积的最大值，即为拿出魔法豆的最小值。
    public long minimumRemoval(int[] beans) {
        Arrays.sort(beans);
        long sum = 0, mx = 0;
        int n = beans.length;
        for (int i = 0; i < n; i++) {
            sum += beans[i];
            mx = Math.max(mx, (long) (n - i) * beans[i]);
        }
        return sum - mx;
    }
}